package com.hmtech.ayp.openai;


import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@AllArgsConstructor
@NoArgsConstructor
@Data
public class Usage {
    @JsonProperty("prompt_tokens")
    private Long promptTokens;
    @JsonProperty("completion_tokens")
    private Long completionTokens;
    @JsonProperty("total_tokens")
    private Long totalTokens;
    @JsonProperty("input_tokens")
    private Long inputTokens;
    @JsonProperty("output_tokens")
    private Long outputTokens;

    @JsonProperty("input_tokens_details")
    private InputTokensDetails inputTokensDetails;

    @AllArgsConstructor
    @NoArgsConstructor
    @Data
    public static class InputTokensDetails {
        private Long textTokens;
        private Long imageTokens;
    }


/*
	"usage": {
		"prompt_tokens": 0,
		"completion_tokens": 0,
		"total_tokens": 767,
		"prompt_tokens_details": {
			"cached_tokens_details": {}
		},
		"completion_tokens_details": {},
		"input_tokens": 367,
		"output_tokens": 400,
		"input_tokens_details": {
			"text_tokens": 44,
			"image_tokens": 323,
			"cached_tokens_details": {}
		}
	}

 */
}
